﻿using System.Collections.Generic;
using System.Runtime.Serialization;
using MyFloridaHouse.libSvDTO;

namespace MyFloridaHouse.libSTO
{
    /// <summary>
    /// Layer Regions STO (server transfer object)
    /// </summary>
    [DataContract]
    public class LayerRegionsDataSTO
    {
        //Todo: local variables are declared public??
        /// <summary>
        /// Local variagle _layerID
        /// </summary>
        public int _layerID;
        /// <summary>
        /// Local variagle _errorMessage
        /// </summary>
        public string _errorMessage;

        //List<RegionDTO> _regionList;
        List<RegionDataDTO> _regionsDataList;

        /// <summary>
        /// Initializes a new instance of the <see cref="RegionsShapesSTO"/> class.
        /// </summary>
        public LayerRegionsDataSTO()
        {
            _layerID = -1;
            //_regionList = new List<RegionDTO>();
            _regionsDataList = new List<RegionDataDTO>();
            _errorMessage = "";
        }

        /// <summary>
        /// Gets or sets the layer ID.
        /// Index in the layer table <see cref="LayerDTO"/>
        /// </summary>
        /// <value>The layer ID.</value>
        [DataMember]
        public int layerID
        {
            get { return _layerID; }
            set { _layerID = value; }
        }

        /// <summary>
        /// Gets or sets the region list of <see cref="RegionDTO"/>.
        /// </summary>
        /// <value>The region list.</value>
        //[DataMember]
        //public List<RegionDTO> regionList
        //{
        //    get { return _regionList; }
        //    set { _regionList = value; }
        //}

        /// <summary>
        /// Gets or sets the regions data list of <see cref="RegionDataDTO"/>.
        /// </summary>
        /// <value>The regions data list.</value>
        [DataMember]
        public List<RegionDataDTO> regionsDataList
        {
            get { return _regionsDataList; }
            set { _regionsDataList = value; }
        }

        /// <summary>
        /// Gets or sets the error message.
        /// </summary>
        /// <value>The error message.</value>
        [DataMember]
        public string errorMessage
        {
            get { return _errorMessage; }
            set { _errorMessage = value; }
        }

    }
}
